App({
  onLaunch: function (options) {
   console.log(options)

    this.checkLogin();

    //获取设备顶部窗口的高度（不同设备窗口高度不一样，根据这个来设置自定义导航栏的高度）
    wx.getSystemInfo({
      success:  (res)=> {
        this.globalData.statusBarHeight = res.statusBarHeight;
        this.globalData.topTitleHeight = res.statusBarHeight + 40;
      },
    })

  },
  
  onShow:function(e){
    // console.log(e)
    //统计用户小程序访问记录
    this.checkLogin().then((res)=>{
      wx.request({
        url: this.globalData.officialDomain + '/custVisitLog',
        data: { custId: res },
        method:"POST",
        success: function (res) {
          // console.log(res);
        }
      })
    }).catch((error)=>{ 
      console.log(error)
    })
  },

  //check用户是否登录，以及小程序中是否存储用户id
  checkLogin: function () {
    return new Promise((resolve, reject) => {
      var self = this;
      wx.getStorage({
        key: "userId",
        success:function(res){
          wx.checkSession({
            success: function () {
              //session 未过期，并且在本生命周期一直有效
              console.log("用户id：" + res.data);
              resolve(res.data);
            },
            fail: function () {
              //登录态过期
              self.login().then((res) => {  //重新登录
                resolve(res);
              }).catch((err)=>{
                console.log(err);
              }); 
            }
          })
        },
        fail:function(err){
          //登录态过期
          self.login().then((res) => {  //重新登录
            resolve(res);
          }).catch((err) => {
            console.log(err);
          }); 
        }
        })
    })
  },

  //登录方法
  login: function () {
    return new Promise((resolve,reject)=>{
      var self = this;
      wx.login({
        success: function (res) {
          var code = res.code
          if (code) {
            wx.request({
              url: self.globalData.officialDomain + '/user/login',
              data: { code: code },
              success: function (res) {
                // console.log(res.data)
                var response = res.data;
                if (response.errorCode == "0000") {   //登录成功
                  var userId = response.data; //每个用户id
                  console.log("登录的获取用户id："+userId);
                  wx.setStorageSync("userId", userId);
                  resolve(userId);
                }else{
                  reject('用户登录失败');
                }
              },
              fail: function (error) {
                reject('用户登录失败');
              }
            })
          } else {
            reject('获取用户登录态失败');
          }
        },
        fail:function(err){
          reject("登录API调用失败！");
        }
      })

    })
  },

  //全局数据
  globalData: {
    // officialDomain: "https://www.zhuanyoyo.com/front/", // 发布域名
    officialDomain: "https://www.95cfun.cn/front/",
    // officialDomain:"https://zhuanyoyo.95cfun.cn/front/", //发布ip
    share: false,  // 从分享过来的默认为false
    statusBarHeight: 0, //状态栏高度
    topTitleHeight:0, //状态栏标题高度
  }

})
